package com.yonyou.cyxdms.basedata.service.repository.option;

import com.yonyou.cms.channel.client.vo.message.DealerAttachVO;
import com.yonyou.cyxdms.basedata.client.domains.vo.VsOptionVO;
import com.yonyou.cyxdms.basedata.service.entity.option.VsOptionPO;
import com.yonyou.cyxdms.basedata.service.vo.option.VehicleProductOptionVO;
import com.yonyou.cyxdms.basedata.service.vo.packages.PackageDictVO;
import com.yonyou.cyxdms.basedata.service.vo.packages.VehicleProductPackageVO;

import java.util.List;
import java.util.Map;

import org.apache.ibatis.annotations.Param;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.yonyou.cyx.framework.dao.base.SuperMapper;

/**
 * <p>
 *  选装 Mapper 接口
 * </p>
 *
 * @author zys
 * @since 2020-02-10
 */
public interface VsOptionMapper extends SuperMapper<VsOptionPO> {

	/**
     * 根据配置Id查询车辆选装信息
     *
     */
    List<Map<String, Object>> getOptionByPackageId(@Param("packageId") Long packageId, @Param("appId") String appId);

    List<VsOptionVO> queryOptionByCondition(@Param("params") Map<String, Object> queryParam);

    /**
     * dcs查询选装信息
     *
     * @param page
     * @param queryParam
     * @return java.util.List<com.yonyou.cyxdms.basedata.service.vo.option.VehicleProductOptionVO>
     * @author zhangys
     * @since 2020/2/24
     */
    List<VehicleProductOptionVO> queryVehicleProductDcsOption(IPage page, @Param("params") Map<String, Object> queryParam);

    /**
     * 查询选装信息（pc）
     *
     * @param queryParam
     * @return java.util.List<com.yonyou.cyxdms.basedata.service.vo.option.VehicleProductOptionVO>
     * @author zhangys
     * @since 2020/2/24
     */
    List<VehicleProductOptionVO> queryVehicleProductOption(IPage page, @Param("params") Map<String, Object> queryParam);
    /**
     * 选装导出
     *
     * @param queryParam
     * @return java.util.List<java.util.Map>
     * @author zhangys
     * @since 2020/12/15
     */
    List<Map> exportExcelForOption(@Param("params") Map<String, Object> queryParam);

    /**

    /**
     * 根据查询条件返回选装
     *
     * @param queryParam
     * @return
     */
    List<VehicleProductOptionVO> queryVehicleProductOption(@Param("params") Map<String, Object> queryParam);

    /**
     * 品系型查询界面配置选装下拉框
     *
     * @param queryParam
     * @return java.util.List<com.yonyou.cyxdms.basedata.service.vo.option.VehicleProductOptionVO>
     * @author caozx
     * @since 2020/12/14
     */
    List<VehicleProductOptionVO> queryOptipnDictAll(@Param("params")  Map<String, Object> queryParam);

    List<VehicleProductOptionVO> queryVehicleProductOptionNewQuery(@Param("params") Map<String, Object> queryParam);

    List<VehicleProductOptionVO> getOptionInfoByExcel(@Param("list") List<String> list,@Param("appId") String appId);

    List<PackageDictVO> queryAllPackage();

    List<VsOptionVO> queryAllOption();
}
